home *** CD-ROM | disk | FTP | other *** search
/ PCGUIA 127 / PC Guia 127.iso / Software / Produtividade / OpenOffice.org 2.0.1 / openofficeorg4.cab / stones.py < prev    next >
Text File  |  2005-11-19  |  777b  |  32 lines

  1. import errno
  2. import hotshot
  3. import hotshot.stats
  4. import os
  5. import sys
  6. import test.pystone
  7.  
  8. def main(logfile):
  9.     p = hotshot.Profile(logfile)
  10.     benchtime, stones = p.runcall(test.pystone.pystones)
  11.     p.close()
  12.  
  13.     print "Pystone(%s) time for %d passes = %g" % \
  14.           (test.pystone.__version__, test.pystone.LOOPS, benchtime)
  15.     print "This machine benchmarks at %g pystones/second" % stones
  16.  
  17.     stats = hotshot.stats.load(logfile)
  18.     stats.strip_dirs()
  19.     stats.sort_stats('time', 'calls')
  20.     try:
  21.         stats.print_stats(20)
  22.     except IOError, e:
  23.         if e.errno != errno.EPIPE:
  24.             raise
  25.  
  26. if __name__ == '__main__':
  27.     if sys.argv[1:]:
  28.         main(sys.argv[1])
  29.     else:
  30.         import tempfile
  31.         main(tempfile.NamedTemporaryFile().name)
  32.